package myenum;

/**
 * MQ队列枚举
 */
public enum QueueEnum {
    /**
     * 库存队列
     */
    BASE_QUEUE("base", "库存队列", "Model.baseModel"),
    /**
     * 线索队列
     */
    LINE_QUEUE("line", "线索队列", "Model.LineModel"),
    /**
     * 支付队列
     */
    PAY_QUEUE("pay", "支付队列", "Model.PayModel"),
    /**
     * 实名统计队列
     */
    REAL_NAME_QUEUE("realName", "实名统计队列", "Model.RealNameModel"),
    /**
     * 消息统计队列
     */
    MESSAGE_QUEUE("message", "消息统计队列", "Model.MessageModel"),
    /**
     * 任务统计队列
     */
    TASK_QUEUE("task", "任务统计队列", "Model.TaskModel"),
    /**
     * 任务发送队列
     */
    TASK_SEND_QUEUE("taskSend", "任务发送队列", "Model.TaskSendModel"),
    /**
     * 关联好友统计队列
     */
    FRIEND_RELATION_QUEUE("relationFriend", "关联好友统计队列", "Model.RelationFriendModel"),
    /**
     * 通讯录好友统计队列
     */
    FRIEND_QUEUE("friend", "通讯录好友统计队列", "Model.FriendModel"),
    /**
     * 帐号统计队列
     */
    ACCOUNT_QUEUE("account", "帐号统计队列", "Model.AccountModel"),
    /**
     * 设备统计队列
     */
    EQUIPMENT_QUEUE("equipment", "设备统计队列", "Model.EquipmentModel"),
    /**
     * 团队成员统计队列
     */
    GROUP_MEMBER_QUEUE("groupMember", "团队成员统计队列", "Model.GroupMemberModel"),
    /**
     * 操作日志上传队列
     */
    LOG_QUEUE("log", "操作日志上传队列", "Model.ExceptionMqModel");

    /**
     * @param queueName   队列名称
     * @param queueRemark 队列说明
     * @param sendModel   发送异常类名
     */
    QueueEnum(String queueName, String queueRemark, String sendModel) {
        this.queueName = queueName;
        this.queueRemark = queueRemark;
        this.sendModel = sendModel;
    }

    private String queueName;
    private String queueRemark;
    private String sendModel;

    /**
     * 得到队列名称
     *
     * @return
     */
    public String getQueueName() {
        return String.format("%sQUEUE", queueName);
    }

    /**
     * 得到队列说明
     *
     * @return
     */
    public String getQueueRemark() {
        return queueRemark;
    }

    /**
     * 得到发送数据类名
     *
     * @return
     */
    public String getSendModel() {
        return sendModel;
    }}
